﻿/*
 Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
 For licensing, see LICENSE.html or http://ckeditor.com/license
*/
CKEDITOR.dialog.add("textarea",function(b){
  return{
    title:b.lang.forms.textarea.title,
    minWidth:350,
    minHeight:220,
    onShow:function(){
      delete this.textarea;
      var a=this.getParentEditor().getSelection().getSelectedElement();
      a&&"textarea"==a.getName()&&(this.textarea=a,this.setupContent(a))
      },
    onOk:function(){
      var a,b=this.textarea,c=!b;
      c&&(a=this.getParentEditor(),b=a.document.createElement("textarea"));
      this.commitContent(b);
      c&&a.insertElement(b)
      },
    contents:[{
      id:"info",
      label:b.lang.forms.textarea.title,
      title:b.lang.forms.textarea.title,
      elements:[{
        id:"_cke_saved_name",
        type:"text",
        label:b.lang.common.name,
        "default":"",
        accessKey:"N",
        setup:function(a){
          this.setValue(a.data("cke-saved-name")||a.getAttribute("name")||"")
          },
        commit:function(a){
          this.getValue()?a.data("cke-saved-name",this.getValue()):(a.data("cke-saved-name",!1),a.removeAttribute("name"))
          }
        },{
      type:"hbox",
      widths:["50%","50%"],
      children:[{
        id:"cols",
        type:"text",
        label:b.lang.forms.textarea.cols,
        "default":"",
        accessKey:"C",
        style:"width:50px",
        validate:CKEDITOR.dialog.validate.integer(b.lang.common.validateNumberFailed),
        setup:function(a){
          this.setValue(a.hasAttribute("cols")&&a.getAttribute("cols")||"")
          },
        commit:function(a){
          this.getValue()?a.setAttribute("cols",this.getValue()):a.removeAttribute("cols")
          }
        },{
      id:"rows",
      type:"text",
      label:b.lang.forms.textarea.rows,
      "default":"",
      accessKey:"R",
      style:"width:50px",
      validate:CKEDITOR.dialog.validate.integer(b.lang.common.validateNumberFailed),
      setup:function(a){
        this.setValue(a.hasAttribute("rows")&&a.getAttribute("rows")||"")
        },
      commit:function(a){
        this.getValue()?a.setAttribute("rows",
          this.getValue()):a.removeAttribute("rows")
        }
      }]
  },{
  id:"value",
  type:"textarea",
  label:b.lang.forms.textfield.value,
  "default":"",
  setup:function(a){
    this.setValue(a.$.defaultValue)
    },
  commit:function(a){
    a.$.value=a.$.defaultValue=this.getValue()
    }
  }]
}]
}
});